package kubernetes

import (
	"k8s-admin/service/kubernetes"
	"k8s-admin/utils"

	"github.com/gin-gonic/gin"
)

// 获取node
func GetListK8sNode(ctx *gin.Context) {
	params := new(struct {
		Name  string `form:"name"`
		Page  int    `form:"page"`
		Limit int    `form:"limit"`
	})
	cid := ctx.Param("cid")
	if err := ctx.ShouldBind(&params); err != nil {
		utils.ReturnContext(ctx).Failed("失败", err)
		return
	}
	resp, err := kubernetes.NewK8sInterface().GetK8sClusterNodeList(cid, params.Name, params.Page, params.Limit)
	if err != nil {
		utils.ReturnContext(ctx).Failed("失败", err.Error())
		return
	}

	utils.ReturnContext(ctx).Successful("成功", resp)
}

// 获取node详情信息
func GetK8sClusterNodeDetail(ctx *gin.Context) {
	params := new(struct {
		Name string `form:"name" json:"name" binding:"required"`
	})
	cid := ctx.Param("cid")
	if err := ctx.ShouldBind(&params); err != nil {
		utils.ReturnContext(ctx).Failed("失败", err.Error())
		return
	}

	node, err := kubernetes.NewK8sInterface().GetK8sClusterNodeDetail(cid, params.Name)
	if err != nil {
		utils.ReturnContext(ctx).Failed("失败", err.Error())
		return
	}

	utils.ReturnContext(ctx).Successful("成功", node)
}
